package com.shadt.core.service;

import java.util.List;

import com.shadt.core.entity.Role;
import com.shadt.core.util.SessionInfo;
import com.shadt.core.vo.RoleVo;

/**
 * 角色业务层接口
 * 
 * @author SongR
 * 
 */
public interface RoleService {
	/**
	 * 根据当前登陆用户获取自己的角色
	 * 
	 * @param sessionInfo
	 *            存放当前登陆用户信息
	 * @return 当前登陆用户拥有的角色
	 */
	List<Role> getByUser(SessionInfo sessionInfo);

	/**
	 * 获取角色
	 * @param id
	 * @return
	 */
	List<RoleVo> getRole(String id);

	/**
	 * 用户授权
	 * @param roleIds
	 * @param userId
	 */
	void addRole(String roleIds, String userId);

	/**
	 * 添加角色
	 * @param roleVo
	 */
	void addRole(RoleVo roleVo);

	/**
	 * 根据条件获取所有角色
	 * @param sSearch
	 * @param parseInt
	 * @param parseInt2
	 * @return
	 */
	List<RoleVo> getAllRole(String sSearch, int parseInt, int parseInt2);

	/**
	 * 获取记录条数
	 * @param sSearch
	 * @return
	 */
	Long getRoleCount(String sSearch);
}
